var _fund_sources = 'fund_sources'; 
$(function(){
	/** 是否展示任务计划 **/
	var _isTaskPaln = $('#isTaskPlan').val();
	if (_isTaskPaln == '') {
		$('#task_plan_tr').hide();
	}
	
	/**资金来源*/
	$.get('dataDict/dataDictsByCode.shtml', {code : _fund_sources}, function(data){
		var checkboxs_html = '';
		for ( var i = 0; i < data.length; i++) {
			checkboxs_html = checkboxs_html
								+ '<input class="easyui-validatebox" required="true" type="checkbox" name="fundSourcesArray" id="fund_sources_' 
								+ data[i].code + '" ';
			if ($('#fundSources_temp').length > 0) {
				var _fundSources_temp = $('#fundSources_temp').val();
				if (data[i].code == _fundSources_temp) {
					checkboxs_html = checkboxs_html + ' checked="checked"';
				}
			}
			checkboxs_html = checkboxs_html + ' value="'
								+ data[i].code + '" style="vertical-align:middle;"><label for="fund_sources_'
								+ data[i].code + '" style="vertical-align:middle;">'
								+ data[i].name + '</label>';
		}
		$('#fund_sources_td').html(checkboxs_html);
	});
	
	/**初始化指标*/
	$('#projectIndexId').combotree({
		url : 'projectIndex/projectIndexs',
		onLoadSuccess : function (node, data) {
			 var t = $(this);
	  		 if(data){
			     $(data).each(function(index,d){
					if(this.state == 'closed'){
					    t.tree('expandAll');
					}
			     });
			}
		},
		required : true,
		tipPosition : 'bottom',
		missingMessage : '请选择所属指标'
	});
	$('#pId_clear_btn').click(function(){
		$('#projectIndexId').combotree('clear');
	});
	
	/** 上传控件初始化 */
	fileUpload({
		positionId:'_fileupload',
		type:'edit',
		initType:'ajax',
		ajaxUrl:'attachment/attachments.html',
		ajaxData:{bizId : $('#id').val(), attaType:'task'}
	});
	/*
	 * 这个作为后期研发需求，暂缓
	 * $('#workflowIds').combobox({
        url:'workflow/workflows.shtml?formTypeId=1',
        method:'get',
        valueField:'workFlowId',
        textField:'flowName',
        panelHeight:'auto',
        multiple:false
	});*/
	/** 保存 */
	$('#btnSave').click(function(){
		$('#name').validatebox({
			required : true,
			tipPosition : 'bottom',
			validType : 'length[1,50]',
			missingMessage : '主题不能为空',
			invalidMessage : '主题不能超过50个字符'
		});
		$('#remark').validatebox({
			required : true,
			tipPosition : 'bottom',
			missingMessage : '任务内容不能为空'
		});
		$('#planAmount').numberbox({
			required : true,
			min:0,
			precision : 2,
			tipPosition : 'bottom',
			missingMessage : '计划使用资金不能为空',
			invalidMessage : '最小为0.00，只能输入两位小数'
		});
		$('#startTime').validatebox({
			required : true,
			tipPosition : 'bottom',
			missingMessage : '任务起始时间不能为空'
		});
		$('#endTime').validatebox({
			required : true,
			tipPosition : 'bottom',
			missingMessage : '任务结束时间不能为空'
		});
		var checked_fundsources = $("input[name='fundSourcesArray']:checked");
		if (0 == checked_fundsources.length) {
			$.messager.alert('提醒', '来源资金不可以未空，且只能勾选一个！','info');
			return;
		} else if (1 != checked_fundsources.length) {
			$.messager.alert('提醒', '来源资金只能勾选一个！','info');
			return;
		}
		var task_actor_ids = $('#taskActorIds').val();
		if ('' == task_actor_ids) {
			$.messager.alert('提醒', '任务参与者不能为空','info');
			return;
		}
		//console.log('1')
		if ($("#nextNode").attr('nodeType') != '3') {
			//console.log('2')
			if ($("#nextNode").attr('dynamicSelect') == '1') {
				//console.log('3')
				var userIds = $('#userIds').val();
				if ('' == userIds) {
					$.messager.alert('提醒', '办理人不可为空','info');
					return;
				}
			}
		}
		var valid = $('#form').form('validate');
		
		if(valid) {
			$("body").mask();
			$('#form').ajaxSubmit({
				url : 'taskWorkflow/save',
				success : function(data) {
					$("body").unmask();
					if (!data.success) {
						$.messager.alert('提醒', data.message,'info');
					} else {
						$.messager.alert('提醒', data.message,'info', function(){
							$('#form').form('clear');
							parent.reSearch();
							parent.closeEasyUiWindow('win');
						});
					}
				}
			});
		}
	});
	
	/** 保存 */
	$('#btnReSave').click(function(){
		$('#name').validatebox({
			required : true,
			tipPosition : 'bottom',
			validType : 'length[1,50]',
			missingMessage : '主题不能为空',
			invalidMessage : '主题不能超过50个字符'
		});
		$('#remark').validatebox({
			required : true,
			tipPosition : 'bottom',
			missingMessage : '任务描述不能为空'
		});
		$('#planAmount').numberbox({
			required : true,
			min:0,
			precision : 2,
			tipPosition : 'bottom',
			missingMessage : '计划使用资金不能为空',
			invalidMessage : '最小为0.00，只能输入两位小数'
		})
		$('#startTime').validatebox({
			required : true,
			tipPosition : 'bottom',
			missingMessage : '任务起始时间不能为空'
		});
		$('#endTime').validatebox({
			required : true,
			tipPosition : 'bottom',
			missingMessage : '任务结束时间不能为空'
		});
		var checked_fundsources = $("input[name='fundSourcesArray']:checked");
		if (0 == checked_fundsources.length) {
			$.messager.alert('提醒', '来源资金不可以未空，且只能勾选一个！','info');
			return;
		} else if (1 != checked_fundsources.length) {
			$.messager.alert('提醒', '来源资金只能勾选一个！','info');
			return;
		}
		var task_actor_ids = $('#taskActorIds').val();
		if ('' == task_actor_ids) {
			$.messager.alert('提醒', '任务参与者不能为空','info');
			return;
		}
		//console.log('1')
		if ($("#nextNode").attr('nodeType') != '3') {
			//console.log('2')
			if ($("#nextNode").attr('dynamicSelect') == '1') {
				//console.log('3')
				var userIds = $('#userIds').val();
				if ('' == userIds) {
					$.messager.alert('提醒', '办理人不可为空','info');
					return;
				}
			}
		}
		var valid = $('#form').form('validate');
//		console.log('-------------------->>>reSave');
		if(valid) {
			$("body").mask();
			$('#form').ajaxSubmit({
				url : 'taskWorkflow/reSave',
				success : function(data) {
					$("body").unmask();
					if (!data.success) {
						$.messager.alert('提醒', data.message,'info');
					} else {
						$.messager.alert('提醒', data.message,'info', function(){
							$('#form').form('clear');
							parent.parent.reSearch();
							parent.parent.closeEasyUiWindow('win');
						});
					}
				}
			});
		}
	});
	
	/** 取消 */
	$('#btnCancel').click(function(){
		$('#form').form('clear');
		parent.closeEasyUiWindow('win');
	});
	
	/****************************task plan query,add,edit,detail,remove*************************************/
	/** 加载任务计划列表 */
	$('#dg').datagrid({    
		border:1,
		nowrap:true,
		striped:true,
		fit: false,//自动大小
		frozenColumns:[[    
	        {field : 'id', title : 'id', hidden:true},    
	        {field : 'name', title : '计划主题', width:200}
	    ]],
	    columns : [[
			{field : 'endTime', title : '截止时间', width : 160,
				formatter : function (value, row, index){
					return value.split(" ")[0];
				}
			},
			{field : 'planActorName', title : '责任人', width : 80, align : 'center'},
			{field : 'expectResult', title : '预期成果', width : 150, align : 'center'},
	        {field : 'remark', title : '计划描述', width:300}
			//,
			//{field : 'createTime', title : '创建时间', width:150, align : 'center'}
        ]],
		singleSelect:true,
		rownumbers:true,
		toolbar:'#tb',
		pagination:true,
		pageSize:20,
		onClickRow:function(rowIndex, rowData){}
	}).datagrid('getPager').pagination({  
        pageSize: 20,//每页显示的记录条数，默认为10  
        pageList: [20,50,100],//可以设置每页记录条数的列表  
        beforePageText: '第',//页数文本框前显示的汉字  
        afterPageText: '页    共 {pages} 页',  
        displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录'
    });
	/** 新增 */
	$('#add').click(function(){
		var _url = 'taskPlan/editTaskPlan.shtml';
		showEasyUiWindow('contentFrame', _url, 'win', '新增任务计划', 550, 400);
	});
	
	/*** 编辑 */
	$('#edit').click(function(){
		var row = $('#dg').datagrid('getSelected');
		if (row) {
			var url = 'taskPlan/editTaskPlan.shtml?id=' + row.id;
			showEasyUiWindow('contentFrame', url, 'win', '编辑任务计划', 500, 350);
		} else {
			$.messager.alert('warning', '请选择一条数据！', 'warning');
		}
	});
	
	/**查看*/
	$('#detail').click(function(){
		var row = $('#dg').datagrid('getSelected');
		if (row) {
			var url = 'taskPlan/detailTaskPlan.shtml?id=' + row.id;
			showEasyUiWindow('contentFrame', url, 'win', '查看任务计划详情',500, 350);
		} else {
			$.messager.alert('warning', '请选择一条数据！', 'warning');
		}
	});
	
	/*** 删除 */
	$('#remove').click(function(){
		var row = $('#dg').datagrid('getSelected');
		if (row) {
			$.messager.confirm('确认', '你确认要删除此条数据吗?', function(r) {
				if (r) {
					var id = row.id;				
					$.get('taskPlan/deleteTaskPlan.shtml', {id : id}, function(rs) {
						if (rs.success == true) {
							$.messager.alert('warning', '删除成功', 'warning', function(){
								dealTaskPlan('remove', id);
							});
						} else {
							$.messager.alert('warning', '删除失败，请联系管理员', 'warning');
						}
					});
				}
			});
		} else {
			$.messager.alert('warning', '请选择一条数据！', 'warning');
		}
	});
});

function dealTaskPlan(operate, id) {
	if ('add' == operate) {
		//新增将构造新的隐藏域
		var _html = '<input type="hidden" name="taskPlanIds" id="taskPlanId_' + id + '" value="' + id +'"/>';
		$('#hide_task_plan_ids').html($('#hide_task_plan_ids').html() + _html);
	} else if ('remove' == operate) {
		$('#taskPlanId_' + id).remove();
	}
	// 重新计算ids
	var idStr = '';
	var ids = new Array();
	$('input[name="taskPlanIds"]').each(function(){
		var id = $(this).val();
		ids.push(id);
	});
	if (ids.length >0) {
		idStr = ids.join(',');
	}
	$('#dg').datagrid({
		url:'taskPlan/queryTaskPlans.shtml',
		queryParams : {
			ids : idStr
		}
	});
}